iT邦幫忙

DAY 18
4

進程。Processing系列 第 18

[進程。Processing] 18.流程(Process)

  • 分享至 

  • xImage
  •  

經過幾次的測試,小艾已經可以將流程順利的啟動,但接下來要怎麼讓流程運作,卻不知從何下手。小艾又來請教 James。
「James,我現在流程已經可以透過外部的程式來啟動流程了,我從 Debug Print 出來的回傳訊息,也是 OK,而且 BPM 那邊也顯示啟動的流程名稱,都正確無誤。但是怎麼流程啟動後,並沒有往下走到 PM 簽核,我該怎麼讓已經設計好的流程開始往下進行?」

「外部呼叫 API 啟動流程的時候,我之前有提過,initProcess.jsp 會將流程需要使用的變數包裝成 Hash Map,這個就是流程需要處理的部份了。」James邊說著邊打開 BPM Studio,將採購簽核的流程專案打開。

「在流程的一開始,我們要加入一個自動執行的節點,這個節點會擷取外部呼叫所傳進來的參數。(圖1)

圖1:參數設定

「在自動執行的節點裡,我們可以透過 Server.getGlobals() 的方式,從 RootID 中將 Hash Map 擷取出來。」

var hm = Server.getGlobals(MyTask.getRootID());

var pm_id = hm.get("pm_id");
var vsr_id = hm.get("vsr_id");
var PO_NO = hm.get("PO_NO");

「再把這些參數值一個一個塞到流程表單相對應的欄位,這樣流程就可以往下走了。」

「記得在這一個節點的 POST Action 中要加入這一段程式碼。」James 提醒。

Server.completeTask(MyTask,"AST03051331705415362");

James仔細的操作 BPM Studio,小艾專注的聽著,終於弄懂整個外部啟動流程的方式了。

「James,這個方法真的蠻有彈性的,只要我的程式可以呼叫 URL,將資料包裝好 POST 過去,這樣各式各樣的程式都可以跟流程做整合,而透過流程管理介面,我們就可以清楚掌握每一個專案的狀態,你之前說的把BPM當做溝通平台的底層架構(圖2),現在我終於明白了。」

圖2:BPM Infrastructure

「現階段整合的部分都集中在 ERP 系統,未來我希望 EIS 也可以整合到 BPM 的平台,將其中的 DTS(註1) 以及 GPM(註2) 以流程的方式管理,而不僅是 email 通知而已。」

「之前有一陣子不是很流行 SOA 架構?BPM 在某些概念上,也可以看做 SOA 架構的一種。其實透過 BPM 來管理 Process,可以讓我們省下不少系統管理的 Effort,只不過我們現在的平台還是偏重在核決權限上頭,The Right Job to the Right Person at the Right Time。BPM 在定義上,是以Process 為主體,不一定要有人參與在裡頭,可以是 Process 對 Process,將程式的執行程序以圖像式的方式呈現,比枯燥無味的程式碼,更容易管理與掌握,只不過目前台灣市場主流的平台,都還沒有做到這個程度。」James 心裡頭回想著,以前使用過的 webMethods,那個平台真的是很棒的一個經驗。

小艾聽完,很開心的又學到不少知識,接下去將流程該完成的部分,繼續做完。

註1:Design Tracking,是供應商與客戶之間一個重要的協作方式,可以追蹤在客戶端執行的專案進度,橫跨 PM/Sales/FAE,目前只在內部運作
註2:Green Product & RoHS Management System 綠色環保料件承認書管理系統

Prev Next

本篇全系列文章


上一篇
[進程。Processing] 17.起始(Initiating)
下一篇
[進程。Processing] 19.整合(Integration)
系列文
進程。Processing31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中
0
老鷹(eagle)
iT邦高手 1 級 ‧ 2012-10-18 09:18:40

沙發搶到沙發了~~!

0
海綿寶寶
iT邦大神 1 級 ‧ 2012-10-18 11:47:15

jamesjan提到:
以前使用過的 webMethods,那個平台真的是很棒的一個經驗。

webMethods
webLogic
webSphere
JBoss
Geronimo

如今安在否
落寞

jamesjan iT邦高手 1 級 ‧ 2012-10-18 12:30:43 檢舉

打不過就買
買了就不再了
落寞

0
bizpro
iT邦大師 1 級 ‧ 2012-12-10 15:05:16

用BPM做平台是對的, 但是您所做的設計應該是Enterprise Service Bus, ESB的工作, 不知.Net的solution上有ESB嗎?

jamesjan iT邦高手 1 級 ‧ 2012-12-11 08:48:41 檢舉

To bizpro 大
.Net 在設計上有 WCF 的架構,應該可以用來做到 ESB 的功能,再之前的 MS MQ 也是
但都必須自己設計/包裝
產品化的東西應該是 Biztalk 只是微軟沒有很用力的推

我要留言

立即登入留言